package com.hegongda.bean;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

/**
 *  购物车对象
 *   包含: 总金额,购物项
 *   购物项可能是多个商品组成
 *   集合Map<商品的主键,值 购物项>
 */
public class Cart implements Cloneable {
    private double total; //总金额
    // 集合Map<商品的主键,值 购物项>
    private HashMap<String, CartItem> itemMap = new HashMap<String, CartItem>();





    public double getTotal() {
        return total;
    }

    public void setTotal(double total) {
        this.total = total;
    }


    public HashMap<String, CartItem> getItemMap() {
        return itemMap;
    }

    /**
     *   集合Map<商品的主键,值 购物项>
     *   商品主键pid作为的键
     *   值是购物项
     *     购物项中,包含商品,商品必然有主键pid
     *     Map<pid, cartitem.product.pid>
     *   getItemMap方法不用返回Map,返回购物项
     *   一个Map集合中个,购物车可能是多个
     *   Map接口方法 values() Map中的值,存储Collection集合
     */
//    public Collection<CartItem> getItemMap() {
//      return  itemMap.values();
//    }

    public void setItemMap(HashMap<String, CartItem> itemMap) {
        this.itemMap = itemMap;
    }

    @Override
    public String toString() {
        return "Cart{" +
                "total=" + total +
                ", itemMap=" + itemMap +
                '}';
    }

    @Override
    public Cart clone() throws CloneNotSupportedException {
        return (Cart)super.clone();
    }
}
